序 言
我编写本书是为了督促设计者和设计项目的管理者去认真思考设计的过程,特别是复杂系统的设计过程。本书是从一个工程师的角度来思考的,既注重效用和效果,也注重效率和雅致。
谁应该读这本书
在The Mythical Man-Month一书中,我将目标读者定位在“专业程序员、专业管理者,尤其是程序员团队的专业管理者”。我论述了在开发团队构建软件时,实现概念完整性(conceptual integrity)的必要、难点和方法。[1]
相比之下,本书的读者范围则扩大了很多。本书涵盖了我在35年设计经历中收获的宝贵经验,这些设计经验让我深信,在不同领域的设计过程中存在着不变的原则。因此,本书的目标读者如下。
1.各领域的设计者
如果摒除人类的直觉,仅靠系统性的方法做设计,这样只会设计出平庸的仿制品和抄袭品;反过来,如果没有系统性的方法,仅凭直觉,那么设计出的产物可能会过于天马行空,并漏洞百出。设计者要考虑的是如何将直觉和系统性的方法融合在一起,如何成长为一名设计者,如何在设计团队中有所作为。
虽然我希望本书能覆盖不同领域,但我期望的读者主要还是计算机软件和硬件的设计者,因为我最擅长的就是面对这类读者进行具体论述。因此,我在本书中列举的一些示例会涉及技术细节。不过其他领域的读者也不用担心,你们可以放心地跳过这些内容,不会影响理解。
2.设计项目的管理者
为了避免项目出现重大问题,项目管理者在设计阶段必须参考理论指导和实践中的经验教训,不能单纯地复制某些过度简化的学术模型,更不能在没有参考理论指导或他人经验的情况下临时拼凑出一个设计过程。
3.设计领域的研究人员
令人欣慰的是,当下对设计过程的研究日趋成熟,但是其中也存在不足。学术发表的数量虽然在增加,但是它们往往针对的是更为明确的主题,而对于宏观问题的讨论则越来越少。人们普遍相信学术发表是既准确又符合“设计科学”的,因此学术发表之外的声音并不容易被人接受。虽然社会科学方法论(social science methodology)对解决这类问题帮助不大,但是我仍然号召设计领域的思想家和研究人员能和我一样着眼于宏观问题。我相信他们也会质疑我的观察视角是否具有普遍性,以及我的观点是否真实有效。总之,我希望把关于设计过程的研究成果分享给设计领域的实践者,或许这能对整个学科有所帮助。
为什么我要写一本关于设计的书
造物是一大乐趣,会给人带来极大的满足。托尔金(J. R. R. Tolkien)表示,上帝赐予人类的礼物,就是让我们也可以造物,上帝这么做的目的是让我们也能体会造物的乐趣。[2]“千山上的牲畜也是我的……我若是饥饿,我不用告诉你。”[3]圣经中的这句话充分表现了设计本身就是一种乐趣。
然而,无论是在理论上还是在实践上,设计者都没有完全理解设计过程。这并不是因为缺少学术研究,而是因为很多设计者都未曾反思过自己的设计过程。在任何设计领域中,不同水平的实现之间存在着巨大的品质上的差距,这也是我研究设计过程的动机之一。设计成本中的很大一部分来自于返工,即修正错误,这些返工的成本通常要占总设计成本的三分之一。平庸的设计会浪费世界资源、破坏环境、影响国际竞争力。因此,设计非常重要,设计相关的教育也值得重视。
所以,人们认为将设计流程系统化会提高设计者的平均实践水平,事实证明的确如此。德国的机械工程设计师似乎是第一批开始用系统化的方法来做设计的群体。[4]
计算机的出现和其带动的人工智能技术,极大地鼓励了人们对设计过程的研究。起初人们期望人工智能技术可以接管设计中大量常规且枯燥的工作,还希望它能生产出绝妙的设计,甚至能够超出人类已经探知的领域。然而这种期望迟迟没有兑现,并且我也不认为这可以实现。[5]设计就是在这样的背景之下发展的,其有专门的会议、期刊及大量的学术研究。
既然已经有了那么多细致的研究和系统性的论述,那么为什么还要另写一本书呢?
首先,自第二次世界大战以来,设计过程的发展非常迅速,但是却很少有人讨论发展带来的变化。例如,由于产品工艺日趋复杂,导致由团队协作来完成的设计案例越来越多,并且设计团队也经常分散于不同的地理位置。另一个变化是现在的设计者通常只负责设计而不再亲手构建自己设计的产品,逐渐脱离了产品的使用和实现。再就是现在所有领域的设计工作都不再采用手工绘图,而是依赖计算机建模。设计过程的培训越来越同质化,这在很大程度上是企业的强制要求。
其次,设计中仍然存在着大量难以理解的地方。当我们试图教授学生如何设计好作品的时候,双方在理解上的分歧就会尤为明显。设计研究界的一位先驱,尼格尔·克罗斯(Nigel Cross)追溯了设计过程研究演化的四个阶段:
(1)理想设计流程的规范化;
(2)针对设计问题内在特性的描述;
(3)针对设计活动现状的观察;
(4)针对设计基本概念的反思。[6]
在过去的60年中,我从事过五个领域的设计工作:计算机架构、软件研发、房屋建造、书籍出版和组织架构。在每个领域,我既担任过总设计师,也当过团队成员。[7]我对设计过程一直很感兴趣,1956年我的博士学位论文的题目就是《自动化数据处理系统的分析设计》(The Analytic Design of Automatic Data Processing System)。[8]对比那时的自己,可能现在正是我进行反思的最佳时机。
这是一本什么类型的书
让我大受震撼的是,设计过程之间竟然存在着如此惊人的相似!常见的设计过程不外乎是构思、与人交流、反复迭代、排除制约、生产实施,所有这些过程都有着极大的相似性。这本书所思考的就是其背后不变的设计过程。
对计算机领域来说,无论是硬件架构还是软件架构,它们的发展历史都很短,并且也很少见到有关设计过程的反思。但是在其他领域,如建筑或机械设计,它们都有着悠久而光辉的历史。这些领域涌现了大量与设计有关的学术理论和学术巨匠。
我是一名计算机领域的专业设计者,不过在这个领域缺少深入的反思,而在一些历史悠久又积累颇深的领域,我只能算是一个业余爱好者。因此,我尝试从较早的设计理论中提取一些经验教训,并将其应用于计算机和软件的设计工作之中。
我坚信“设计科学”是一个不切实际的目标,追求“设计科学”甚至会使人误入歧途。这种大胆的质疑,一是出自我的直觉,二是出自经验。所谓的经验不只是我个人的经验,也包括那些慷慨地与我分享他们见解的其他设计者的经验。[9]
所以这本书不是富含有序论证的专题论文集或教科书,而是一些包含个人观点的篇章。虽然我尝试提供实用的参考文献和注释以开拓读者的思路,但我还是建议读者先通读全书,然后再返回来研究这些内容。因此,我将这些内容附在每章的末尾。
本书第六部分的内容是案例研究,提供了一些具体示例来验证文中的论点。选择这些示例并不是因为它们很重要,而是因为凭借它们我搭建了一个简易的经验库,让我可以从中找到结论和论点。我尤其喜欢关于房屋功能设计的案例研究,我认为任何领域的设计者都可以参考它们。
我曾经作为总设计师为三个房屋项目进行功能设计(详细的楼层平面图、照明、电气和管道)。将房屋功能设计的过程与复杂计算机硬件和软件的设计过程进行比较,有助于我提取设计过程的“本质”。因此,我将这些设计过程作为案例研究,在本书中详细地进行描述。
回顾这些案例研究,许多都具有一个引人注目的共同特征:无论决策者是谁,成果中的大部分收益来自最大胆的决策。这些大胆的决策有时是出于远见,有时是出于破釜沉舟的精神。这种决策犹如赌博投机一般,需要额外的投资以期望获得更好的回报。
鸣谢
关于本书的标题,我借用了前辈戈登·克雷格(Gordon Glegg)的一部著作。他是一位天才机械设计大师,有着非凡的魅力,他在剑桥大学时也是一位极具人气的教师。1975年,我有幸与他共进午餐,在与他的接触中,我感受到了他对设计的热情。他为自己的著作起了一个完美的标题,我发现这个标题超越了我尝试过的所有标题。因此,我充满感激和敬重地,再一次使用它作为本书的标题。[10]
感谢伊凡·苏泽兰(Ivan Sutherland)对我的鼓励。他在1997年建议我将一套讲义扩展为读本,并在十多年后对初稿进行了精准的指正,使其品质得到了极大的提升。在与苏泽兰先生的思维碰撞中我收获颇多。
正是凭借北卡罗来纳大学教堂山分校和我的两位系主任史蒂芬·韦斯(Stephen Weiss)和杨·普林斯(Jan Prins)授予我的三个研修假期,以及剑桥大学的彼得·罗宾逊(Peter Robinson)、伦敦大学学院的梅尔·斯莱特(Mel Slater)和他们的系主任、同事们的帮助,我才得以完成这项工作。
美国国家科学基金会(National Science Foundation, NSF)的计算机和信息科学工程理事会(Computer and Information Science and Engineering Directorate)的设计科学项目由副理事长彼得·弗里曼(Peter A. Freeman)发起,该项目为本书的完成和相关网站的搭建提供了大力的资助。这些资金使我得以采访了许多设计师,并让我在过去的几年里将主要精力集中在撰写本书上。
我深深地感谢每位与我分享他们见解的一线设计师。我在本书的末尾列出了一份致谢受访者和评审人员的名单。我深受一些书籍的启发和影响,因此我在本书第28章“推荐阅读”中将其列出。
我的妻子南希(Nancy)是书中部分内容的共同创作者,是她一直支持和鼓励着我,我的孩子肯尼思·布鲁克斯(Kenneth P. Brooks)、罗杰·布鲁克斯(Roger E. Brooks)和巴巴拉·拉丁(Barbara B. La Dine)也是如此。罗杰校阅了我的手稿,并对每个章节都提出了几十条建议,大到概念观点,小到标点符号,他都做得十分出色。
感谢北卡罗来纳大学教堂山分校给予了我强有力的行政支持,包括蒂莫西·奎格(Timothy Quigg)、惠特尼·沃恩(Whitney Vaughan)、达琳·弗里德曼(Darlene Freedman)、奥德丽·拉贝莱(Audrey Rabelais)和大卫·莱恩斯 (David Lines)。 感谢艾迪生·韦斯利出版公司(Addison-Wesley Publishing Company)的出版合作伙伴彼得·戈登(Peter Gordon)对我提供的非同寻常的鼓励。 朱莉·纳希尔(Julie Nahil)是艾迪生·韦斯利出版公司的全方位制作经理,巴巴拉·伍德 (Barbara Wood)是本书的校对编辑,他们的专业知识和耐心帮助我完成了工作,在此对他们表示感谢。
约翰·范弗莱克(John H. van Vleck)是诺贝尔物理学奖得主,我在哈佛艾肯实验室(Aiken's lab)攻读研究生时,他是工程与应用科学学院的院长。范弗莱克非常关注工程实践建立在坚实的科学基础之上。在他的领导下,美国工程学的教学方法发生了剧烈的转变,教学方针从设计转为应用科学。由于这次的转变过于激进,反对的声音随之而来,相比设计,更倾向应用的教学方法一直备受争议。我很感谢我的三位哈佛老师,他们自始至终都能意识到设计的重要性,并向学生教授设计相关的知识,他们是菲利普·勒科贝莱(Philippe E. Le Corbeiller)、哈里·米姆诺(Harry R. Mimno)和霍华德·艾肯(Howard H. Aiken),他们是我的领路人。
感谢并赞美伟大的造物主,他慷慨地赐予我们财富、每日所需和造物的乐趣。
北卡罗来纳州教堂山市
2009年11月
注释
[1]本书封面的说明源自斯莫瑟斯特(Smethurst)的The Pictorial History of Salisbury Cathedral(1967年),这本书中写道:“……因此,索尔兹伯里是英格兰除圣保罗大教堂外唯一的、整个内部结构都由一个人(或一个双人团队)设计并在没有间断的情况下完成的大教堂。”
[2]托尔金(Tolkien)的《精灵故事集》,收录于Tree and Leaf (1964年)的第54页。
[3]出自Psalm的章节50:10,重点强调12小节。
[4]帕尔(Pahl)和拜兹(Beitz)编写了著名的Konstructionslehre(1984年),在这本书的1.2.2节,二人追溯了这段始于1928年的历史。这本书已经出版了7个版本,可能是最重要的、介绍系统化设计的著作。我将自己对“设计过程”的研究与特定平台的设计规则区分开来。而对于设计过程的研究已经有着近千年的历史。
[5]主要的专著是赫伯特·西蒙(Herbert Simon)的The Sciences of the Artificial(1969年,1981年,1996年)。
[6]克罗斯(Gross),Developments in Design Methodology(1983年)。
[7]我将自己的设计经历整理成了表格,放在网站上,读者可以通过访问以下网站地址来查阅。
[8]布鲁克斯的The Analytic Design of Automatic Data Processing Systems(1956年),哈佛大学博士论文。
[9]读者可以在维基百科中找到关于设计方法的描述,可惜我没有为此做出贡献。
“挑战在于将个人经验、框架和观点,转化为一个共享的、可理解的知识领域,最重要的是可以将它教授给他人。维克多·马戈林(Victor Margolin)列出了三个原因,说明为什么这是困难的,其中一个原因是:‘……对设计论述的个人探索过于关注个人叙事,导致形成个人观点,而不是一个带有批判性的、带有共享价值观的事物。’”
对此,我必须承认:“罪名成立。”
[10]克雷格The Design of Design(1969)。